// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/kpdus/jad.html
// Decompiler options: braces fieldsfirst space lnc
package org.achartengine.chart;
import android.graphics.Canvas;
import android.graphics.Paint;
import org.achartengine.model.CategorySeries;
import org.achartengine.renderer.DialRenderer;
import org.achartengine.renderer.SimpleSeriesRenderer;
// Referenced classes of package org.achartengine.chart:
// RoundChart
public class DialChart extends RoundChart
{
private static final int a = 10;
private DialRenderer b;
public DialChart(CategorySeries categoryseries, DialRenderer dialrenderer)
{
super(categoryseries, dialrenderer);
b = dialrenderer;
}
private double a(double d, double d1, double d2, double d3, double d4)
{
double d5 = d2 - d1;
double d6 = d4 - d3;
return Math.toRadians(d1 + (d5 * (d - d3)) / d6);
}
private void a(Canvas canvas, double d, double d1, double d2,
double d3, int i, int j, double d4, double d5, double d6, Paint paint, boolean flag)
{
for (double d7 = d; d7 <= d1; d7 += d6)
{
double d8 = a(d7, d2, d3, d, d1);
double d9 = Math.sin(d8);
double d10 = Math.cos(d8);
int k = Math.round((float)i + (float)(d5 * d9));
int l = Math.round((float)j + (float)(d5 * d10));
int i1 = Math.round((float)i + (float)(d9 * d4));
int j1 = Math.round((float)j + (float)(d10 * d4));
canvas.drawLine(k, l, i1, j1, paint);
if (!flag)
{
continue;
}
paint.setTextAlign(android.graphics.Paint.Align.LEFT);
if (k <= i1)
{
paint.setTextAlign(android.graphics.Paint.Align.RIGHT);
}
String s = (new StringBuilder()).append(d7).append("").toString();
if (Math.round(d7) == (long)d7)
{
s = (new StringBuilder()).append((long)d7).append("").toString();
}
canvas.drawText(s, k, l, paint);
}
}
private void a(Canvas canvas, double d, int i, int j, double d1,
boolean flag, Paint paint)
{
double d2 = Math.toRadians(90D);
int k = (int)(10D * Math.sin(d - d2));
int l = (int)(10D * Math.cos(d - d2));
int i1 = (int)(d1 * Math.sin(d));
int j1 = (int)(d1 * Math.cos(d));
int k1 = i + i1;
int l1 = j + j1;
float af[];
if (flag)
{
int i2 = i + (int)(0.84999999999999998D * d1 * Math.sin(d));
int j2 = j + (int)(0.84999999999999998D * d1 * Math.cos(d));
float af1[] = new float[6];
af1[0] = i2 - k;
af1[1] = j2 - l;
af1[2] = k1;
af1[3] = l1;
af1[4] = i2 + k;
af1[5] = l + j2;
float f = paint.getStrokeWidth();
paint.setStrokeWidth(5F);
canvas.drawLine(i, j, k1, l1, paint);
paint.setStrokeWidth(f);
af = af1;
} else
{
af = new float[6];
af[0] = i - k;
af[1] = j - l;
af[2] = k1;
af[3] = l1;
af[4] = k + i;
af[5] = l + j;
}
drawPath(canvas, af, paint, true);
}
public void draw(Canvas canvas, int i, int j, int k, int l, Paint paint)
{
paint.setAntiAlias(b.isAntialiasing());
paint.setStyle(android.graphics.Paint.Style.FILL);
paint.setTextSize(b.getLabelsTextSize());
int i1 = getLegendSize(b, l / 5, 0.0F);
int j1 = i + k;
int k1 = mDataset.getItemCount();
String as[] = new String[k1];
for (int l1 = 0; l1 < k1; l1++)
{
as[l1] = mDataset.getCategory(l1);
}
int i2;
int j2;
int k2;
float f;
float f1;
double d;
double d1;
double d2;
double d3;
double d6;
double d7;
int j3;
int k3;
if (b.isFitLegend())
{
i2 = drawLegend(canvas, b, as, i, j1, j, k, l, i1, paint, true);
} else
{
i2 = i1;
}
j2 = (j + l) - i2;
drawBackground(b, canvas, i, j, k, l, paint, false, 0);
k2 = (int)(0.34999999999999998D * (double)Math.min(Math.abs(j1 - i), Math.abs(j2 - j)) * (double)b.getScale());
if (mCenterX == 0x7fffffff)
{
mCenterX = (i + j1) / 2;
}
if (mCenterY == 0x7fffffff)
{
mCenterY = (j2 + j) / 2;
}
f = 0.9F * (float)k2;
f1 = 1.1F * (float)k2;
d = b.getMinValue();
d1 = b.getMaxValue();
d2 = b.getAngleMin();
d3 = b.getAngleMax();
if (!b.isMinValueSet() || !b.isMaxValueSet())
{
int l2 = b.getSeriesRendererCount();
int i3 = 0;
double d4 = d1;
double d5 = d;
for (; i3 < l2; i3++)
{
double d9 = mDataset.getValue(i3);
if (!b.isMinValueSet())
{
d5 = Math.min(d5, d9);
}
if (!b.isMaxValueSet())
{
d4 = Math.max(d4, d9);
}
}
d1 = d4;
d = d5;
}
if (d == d1)
{
d *= 0.5D;
d1 *= 1.5D;
}
paint.setColor(b.getLabelsColor());
d6 = b.getMinorTicksSpacing();
d7 = b.getMajorTicksSpacing();
if (d6 == 1.7976931348623157E+308D)
{
d6 = (d1 - d) / 30D;
}
if (d7 == 1.7976931348623157E+308D)
{
d7 = (d1 - d) / 10D;
}
a(canvas, d, d1, d2, d3, mCenterX, mCenterY, f1, k2, d6, paint, false);
a(canvas, d, d1, d2, d3, mCenterX, mCenterY, f1, f, d7, paint, true);
j3 = b.getSeriesRendererCount();
k3 = 0;
while (k3 < j3)
{
double d8 = a(mDataset.getValue(k3), d2, d3, d, d1);
paint.setColor(b.getSeriesRendererAt(k3).getColor());
boolean flag;
if (b.getVisualTypeForIndex(k3) == org.achartengine.renderer.DialRenderer.Type.ARROW)
{
flag = true;
} else
{
flag = false;
}
a(canvas, d8, mCenterX, mCenterY, f, flag, paint);
k3++;
}
drawLegend(canvas, b, as, i, j1, j, k, l, i2, paint, false);
drawTitle(canvas, i, j, k, paint);
}
}